package io;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class Test01 {

    public static void main(String[] args) {
        long startTime = System.currentTimeMillis();
        // 被复制的文件
        File fromFile = new File("D:/1.txt");
        // 复制出来的文件
        File toFile = new File("D:/2.txt");
        // 声明入流
        InputStream is = null;
        //
        OutputStream os = null;
        try {
            is = new FileInputStream(fromFile);//创建输入流
            os = new FileOutputStream(toFile);// 创建输出流
            // 逐个字节读取
            int content = is.read();
            while (content != -1) {
                // System.out.print((char)content); 控制台
                // 使用输出流将读取到的content写入文件
                os.write(content);
                // 刷新流
                // os.flush();
                content = is.read();
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            // 关闭流
            try {
                is.close();
                os.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
            long endTime = System.currentTimeMillis();
            long costTime = endTime - startTime;
            System.out.println("复制文件完成，耗时:" + costTime + "毫秒");
        }


    }

}